#ifndef NR_DEVICE_NPORT_H
#define NR_DEVICE_NPORT_H

#include "nr_device.h"

#define NR_DEVICE_TYPE_ID_NPORT 100
#define NR_DEVICE_TYPE_ID_APMD7XX 200

class nr_device_nport : public nr_device
{
public:
	nr_device_nport();

	~nr_device_nport();

	virtual nr_error_t init(const QVariantHash &args);

	virtual nr_error_t start();

	virtual nr_error_t stop();

	virtual nr_error_t set_property(nr_id_t prop_id, const QVariant &in_prop);

	virtual nr_error_t get_property(nr_id_t prop_id, QVariant &out_prop);

	virtual nr_error_t perform_action(nr_id_t action_id, const QVariantHash &in_params, QVariantHash &out_params);

	virtual void add_child_device(nr_device *child_device);

	void put_data(nr_data *data);

private:
	QThread* m_nport_thread;
};

#endif // NR_DEVICE_NPORT_H
